﻿#include<iostream>
using namespace std;
int lowbit(int x)   //x=101000,lowbit(101000)=1000;
{
	return x & -x;	//即返回的是二进制中最右边的1对应的十进制数
}					//即1000对应的十进制是8，返回8
int main() 
{
	std::cin.tie(0);
	std::ios::sync_with_stdio(false);
	int n;
	cin >> n;
	while (n--)
	{
		int x;
		cin >> x;
		int res = 0;
		while (x)
		{
			x = x - lowbit(x);	//x减去lowbit中返回的1，减一次表示找到一个1，res++;
			res++;	
		}
		cout << res <<" ";		//最后输出res的值，即二进制中1的个数
	}
	system("pause");
	return 0;
};